	.file	1 "tp0.c"
	.section .mdebug.abi32
	.previous
	.abicalls
	.rdata
	.align	2
$LC1:
	.ascii	"version\000"
	.align	2
$LC2:
	.ascii	"help\000"
	.align	2
$LC3:
	.ascii	"input\000"
	.align	2
$LC4:
	.ascii	"output\000"
	.align	2
$LC5:
	.ascii	"action\000"
	.data
	.align	2
$LC6:
	.word	$LC1
	.word	0
	.word	0
	.word	86
	.word	$LC2
	.word	0
	.word	0
	.word	104
	.word	$LC3
	.word	1
	.word	0
	.word	105
	.word	$LC4
	.word	1
	.word	0
	.word	111
	.word	$LC5
	.word	1
	.word	0
	.word	97
	.word	0
	.word	0
	.word	0
	.word	0
	.globl	memcpy
	.rdata
	.align	2
$LC0:
	.ascii	"Vhi:o:a:\000"
	.align	2
$LC7:
	.ascii	"stdin\000"
	.align	2
$LC8:
	.ascii	"stdout\000"
	.align	2
$LC9:
	.ascii	"-\000"
	.align	2
$LC10:
	.ascii	"rb\000"
	.align	2
$LC11:
	.ascii	"Error: no se pudo abrir %s.\n\000"
	.align	2
$LC12:
	.ascii	"wb\000"
	.align	2
$LC13:
	.ascii	"encode\000"
	.align	2
$LC14:
	.ascii	"decode\000"
	.align	2
$LC15:
	.ascii	"Error: \"%s\": acci\303\263n inv\303\241lida. -h o --hel"
	.ascii	"p para ver la ayuda.\n\000"
	.text
	.align	2
	.globl	main
	.ent	main
main:
	.frame	$fp,696,$ra		# vars= 648, regs= 3/0, args= 24, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,696
	.cprestore 24
	sw	$ra,688($sp)
	sw	$fp,684($sp)
	sw	$gp,680($sp)
	move	$fp,$sp
	sw	$a0,696($fp)
	sw	$a1,700($fp)
	la	$v0,__sF
	sw	$v0,32($fp)
	la	$v0,__sF+88
	sw	$v0,36($fp)
	la	$v0,$LC0
	sw	$v0,40($fp)
	addu	$v0,$fp,48
	la	$v1,$LC6
	move	$a0,$v0
	move	$a1,$v1
	li	$a2,96			# 0x60
	la	$t9,memcpy
	jal	$ra,$t9
	addu	$v0,$fp,48
	sw	$zero,16($sp)
	lw	$a0,696($fp)
	lw	$a1,700($fp)
	lw	$a2,40($fp)
	move	$a3,$v0
	la	$t9,getopt_long
	jal	$ra,$t9
	sw	$v0,144($fp)
	li	$v0,1			# 0x1
	sw	$v0,664($fp)
	addu	$v0,$fp,152
	move	$a0,$v0
	la	$a1,$LC7
	la	$t9,strcpy
	jal	$ra,$t9
	addu	$v0,$fp,408
	move	$a0,$v0
	la	$a1,$LC8
	la	$t9,strcpy
	jal	$ra,$t9
$L18:
	lw	$v1,144($fp)
	li	$v0,-1			# 0xffffffffffffffff
	bne	$v1,$v0,$L20
	b	$L19
$L20:
	lw	$v0,144($fp)
	addu	$v0,$v0,-86
	sw	$v0,672($fp)
	lw	$v1,672($fp)
	sltu	$v0,$v1,26
	beq	$v0,$zero,$L21
	lw	$v0,672($fp)
	sll	$v1,$v0,2
	la	$v0,$L37
	addu	$v0,$v1,$v0
	lw	$v0,0($v0)
	.cpadd	$v0
	j	$v0
	.rdata
	.align	2
$L37:
	.gpword	$L23
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L30
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L22
	.gpword	$L24
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L21
	.gpword	$L27
	.text
$L22:
	la	$t9,show_help
	jal	$ra,$t9
	sw	$zero,668($fp)
	b	$L17
$L23:
	la	$t9,show_version
	jal	$ra,$t9
	sw	$zero,668($fp)
	b	$L17
$L24:
	lw	$v0,optarg
	beq	$v0,$zero,$L21
	lw	$a0,optarg
	la	$a1,$LC9
	la	$t9,strcmp
	jal	$ra,$t9
	beq	$v0,$zero,$L21
	addu	$v0,$fp,152
	move	$a0,$v0
	lw	$a1,optarg
	li	$a2,256			# 0x100
	la	$t9,strncpy
	jal	$ra,$t9
	addu	$v0,$fp,152
	move	$a0,$v0
	la	$a1,$LC10
	la	$t9,fopen
	jal	$ra,$t9
	sw	$v0,32($fp)
	lw	$v0,32($fp)
	bne	$v0,$zero,$L21
	addu	$v0,$fp,152
	la	$a0,__sF+176
	la	$a1,$LC11
	move	$a2,$v0
	la	$t9,fprintf
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,668($fp)
	b	$L17
$L27:
	lw	$v0,optarg
	beq	$v0,$zero,$L21
	lw	$a0,optarg
	la	$a1,$LC9
	la	$t9,strcmp
	jal	$ra,$t9
	beq	$v0,$zero,$L21
	addu	$v0,$fp,408
	move	$a0,$v0
	lw	$a1,optarg
	li	$a2,256			# 0x100
	la	$t9,strncpy
	jal	$ra,$t9
	addu	$v0,$fp,408
	move	$a0,$v0
	la	$a1,$LC12
	la	$t9,fopen
	jal	$ra,$t9
	sw	$v0,36($fp)
	lw	$v0,36($fp)
	bne	$v0,$zero,$L21
	addu	$v0,$fp,408
	la	$a0,__sF+176
	la	$a1,$LC11
	move	$a2,$v0
	la	$t9,fprintf
	jal	$ra,$t9
	li	$v1,-1			# 0xffffffffffffffff
	sw	$v1,668($fp)
	b	$L17
$L30:
	lw	$v0,optarg
	bne	$v0,$zero,$L31
	li	$v0,1			# 0x1
	sw	$v0,664($fp)
	b	$L21
$L31:
	lw	$a0,optarg
	la	$a1,$LC13
	la	$t9,strcmp
	jal	$ra,$t9
	bne	$v0,$zero,$L33
	li	$v0,1			# 0x1
	sw	$v0,664($fp)
	b	$L21
$L33:
	lw	$a0,optarg
	la	$a1,$LC14
	la	$t9,strcmp
	jal	$ra,$t9
	bne	$v0,$zero,$L35
	li	$v0,2			# 0x2
	sw	$v0,664($fp)
	b	$L21
$L35:
	la	$a0,__sF+176
	la	$a1,$LC15
	lw	$a2,optarg
	la	$t9,fprintf
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,668($fp)
	b	$L17
$L21:
	addu	$v0,$fp,48
	sw	$zero,16($sp)
	lw	$a0,696($fp)
	lw	$a1,700($fp)
	lw	$a2,40($fp)
	move	$a3,$v0
	la	$t9,getopt_long
	jal	$ra,$t9
	sw	$v0,144($fp)
	b	$L18
$L19:
	lw	$v1,664($fp)
	sw	$v1,676($fp)
	li	$v0,1			# 0x1
	lw	$v1,676($fp)
	beq	$v1,$v0,$L40
	li	$v0,2			# 0x2
	lw	$v1,676($fp)
	beq	$v1,$v0,$L41
	b	$L39
$L40:
	lw	$a0,32($fp)
	lw	$a1,36($fp)
	la	$t9,encode_file
	jal	$ra,$t9
	b	$L39
$L41:
	lw	$a0,32($fp)
	lw	$a1,36($fp)
	la	$a2,__sF+176
	la	$t9,decode_file
	jal	$ra,$t9
$L39:
	lw	$a0,32($fp)
	la	$t9,fclose
	jal	$ra,$t9
	lw	$a0,36($fp)
	la	$t9,fclose
	jal	$ra,$t9
	sw	$zero,668($fp)
$L17:
	lw	$v0,668($fp)
	move	$sp,$fp
	lw	$ra,688($sp)
	lw	$fp,684($sp)
	addu	$sp,$sp,696
	j	$ra
	.end	main
	.size	main, .-main
	.rdata
	.align	2
$LC16:
	.ascii	"Uso: ./tp0 [args]\n\000"
	.align	2
$LC17:
	.ascii	"Argumentos:\n\000"
	.align	2
$LC18:
	.ascii	"\t-V, --version\tMuestra la versi\303\263n de la aplicac"
	.ascii	"i\303\263n.\n\000"
	.align	2
$LC19:
	.ascii	"\t-h, --help\tMuestra esta informaci\303\263n de ayuda.\n"
	.ascii	"\000"
	.align	2
$LC20:
	.ascii	"\t-i, --input\tDefine el archivo de entrada (default: st"
	.ascii	"din).\n\000"
	.align	2
$LC21:
	.ascii	"\t-o, --output\tDefine el archivo de salida (default: st"
	.ascii	"dout).\n\000"
	.align	2
$LC22:
	.ascii	"\t-a, --action\tDefine la acci\303\263n a realizar: enco"
	.ascii	"de (default) o decode.\n\000"
	.text
	.align	2
	.globl	show_help
	.ent	show_help
show_help:
	.frame	$fp,40,$ra		# vars= 0, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,40
	.cprestore 16
	sw	$ra,32($sp)
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	la	$a0,$LC16
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC17
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC18
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC19
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC20
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC21
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC22
	la	$t9,printf
	jal	$ra,$t9
	move	$v0,$zero
	move	$sp,$fp
	lw	$ra,32($sp)
	lw	$fp,28($sp)
	addu	$sp,$sp,40
	j	$ra
	.end	show_help
	.size	show_help, .-show_help
	.rdata
	.align	2
$LC23:
	.ascii	"66.20 - Organizaci\303\263n de Computadoras\n\000"
	.align	2
$LC24:
	.ascii	"Trabajo Pr\303\241ctico n\302\2720: Infraestructura B\303"
	.ascii	"\241sica\n\000"
	.align	2
$LC25:
	.ascii	"Base64 Encoder/Decoder: versi\303\263n 1.0 (03/04/2012)\n"
	.ascii	"\000"
	.text
	.align	2
	.globl	show_version
	.ent	show_version
show_version:
	.frame	$fp,40,$ra		# vars= 0, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,40
	.cprestore 16
	sw	$ra,32($sp)
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	la	$a0,$LC23
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC24
	la	$t9,printf
	jal	$ra,$t9
	la	$a0,$LC25
	la	$t9,printf
	jal	$ra,$t9
	move	$v0,$zero
	move	$sp,$fp
	lw	$ra,32($sp)
	lw	$fp,28($sp)
	addu	$sp,$sp,40
	j	$ra
	.end	show_version
	.size	show_version, .-show_version
	.ident	"GCC: (GNU) 3.3.3 (NetBSD nb3 20040520)"
